如何检查Docker容器的内存和CPU使用情况? 您所在的位置:网站首页 docker pids 如何检查Docker容器的内存和CPU使用情况?

如何检查Docker容器的内存和CPU使用情况?

2023-04-24 13:11| 来源: 网络整理| 查看: 265

Docker是最流行和广泛使用的容器化平台之一,用于构建、共享和运行应用程序。在当今世界,大多数应用程序都部署在容器化平台上,因此管理Docker容器是任何系统管理员的关键任务。Docker允许你检查和监控Docker容器的资源使用情况,如CPU和内存使用情况。

本教程将告诉你如何检查Docker容器的CPU和内存使用情况。

前提条件一台运行Linux并安装了Docker的服务器。在服务器上配置了一个root密码。

如何监控和检查Docker容器的CPU和RAM使用情况Docker提供了一个统计子命令,允许你检查正在运行的Docker容器的内存和CPU利用率。要列出所有docker stats命令,请运行以下命令。

docker stats --help

你会得到以下输出:

Usage: docker stats [OPTIONS] [CONTAINER...] Display a live stream of container(s) resource usage statistics Options: -a, --all Show all containers (default shows just running) --format string Pretty-print images using a Go template --no-stream Disable streaming stats and only pull the first result --no-trunc Do not truncate output

现在,让我们运行docker stats命令来检查所有运行中的容器的状态:

docker stats

你会在下面的输出中得到所有运行中的容器的信息:

CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS cb40a0f56aba determined_robinson 0.00% 2.648MiB / 3.839GiB 0.07% 726B / 0B 0B / 12.3kB 3 e0ee5b16c93f portainer 0.84% 24.6MiB / 3.839GiB 0.63% 1.02MB / 4.35MB 0B / 721kB 5

默认情况下,docker stats命令将显示所有容器统计数据的实时流。如果你想看到所有正在运行的容器的第一个统计信息,请使用--no-stream标志。

docker stats --no-stream

你将得到以下输出:

CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS cb40a0f56aba determined_robinson 0.00% 2.648MiB / 3.839GiB 0.07% 796B / 0B 0B / 57.3kB 3 e0ee5b16c93f portainer 0.00% 25.5MiB / 3.839GiB 0.65% 1.03MB / 4.35MB 0B / 721kB 5

默认情况下,docker stats命令会显示所有正在运行的容器的统计信息。如果你想同时显示正在运行和停止的容器的统计信息,请使用-a标志:

docker stats --no-stream -a

如果你想检查某个特定容器的状态,可以使用docker stats命令,后面加上容器的ID。

docker stats cb40a0f56aba

你将得到以下输出:

CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS cb40a0f56aba determined_robinson 0.00% 2.648MiB / 3.839GiB 0.07% 796B / 0B 0B / 57.3kB 3

运行下面的命令,只显示所有运行中的容器的CPU信息:

docker stats --format "{{.Container}} {{.CPUPerc}}" --no-stream

输出:

cb40a0f56aba 0.00% e0ee5b16c93f 0.00%

运行下面的命令,只显示所有运行中的容器的CPU和内存信息。

docker stats --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemPerc}}"

输出:

CONTAINER CPU % MEM % cb40a0f56aba 0.00% 0.07% e0ee5b16c93f 0.10% 0.59%

使用伪文件显示Docker容器的使用情况你也可以从控制组中检查Docker容器的指标,控制组位于Docker容器主机系统的/sys/fs/cgroup目录下。

首先,使用以下命令获得所有正在运行的容器ID。

docker ps --no-trunc --format "{{.Names}}\t{{.ID}}"

你将得到以下输出:

determined_robinson cb40a0f56aba8b3a29513dafa7622f8d5d6435c9302dc6a3db73ea5eca506af5 portainer e0ee5b16c93f358a15dfcb93cc80d2c2d1c1c675e7b65e41434ce20f08773465

接下来,运行下面的命令来获取第二个容器的统计信息。

cat /sys/fs/cgroup/system.slice/docker-e0ee5b16c93f358a15dfcb93cc80d2c2d1c1c675e7b65e41434ce20f08773465.scope/cpu.stat

你将在下面的输出中得到容器的指标:

usage_usec 1550758 user_usec 1301875 system_usec 248883 nr_periods 0 nr_throttled 0 throttled_usec 0

总结在这篇文章中,我们向你展示了如何通过命令行检查Docker容器的CPU和内存使用情况。我希望这能帮助你监控你的Docker环境。


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有